The present invention is in the field of enhancing microprocessor performance. More particularly, the present invention comprises a method, apparatus, and machine-readable medium to increase a microprocessor""s speed by facilitating operation of the microprocessor above a thermal design power limit.
Microprocessor-operated devices are used for everything from garage door openers to telephones to bar code scanners to computers. Competition puts pressure on manufacturers to create smaller, faster, and more adaptable microprocessor-operated devices. One way of creating smaller, faster, and more adaptable microprocessor-operated devices is making more efficient use of a microprocessor""s capabilities by increasing microprocessor speed since increasing microprocessor speed allows the microprocessor to perform more complex tasks per unit of time.
Microprocessor speed is a function of the microprocessor""s clock frequency. This is the reason, for example, computers are marketed and compared using the clock frequencies such as 450 megahertz (MHz). Other evaluations are available because there are other limitations to the performance of microprocessor-operated devices but the clock frequency is significant.
The clock frequency is typically set by a clock circuit. The clock circuit can be separate from or a part of the microprocessor. Some clock frequencies, for example, are determined by a ratio of the system bus clock. The clock circuit produces a series of low-to-high and high-to-low voltage transitions that trigger the gate changes within the microprocessor and coordinate data transfers on the system bus. An important practical limitation to the clock frequency is power dissipation. The amount of power dissipated by a microprocessor is related to several factors including thermal properties, clock frequency, current, and operating voltage of the microprocessor, as is well known to those of skill in the art. This power dissipation is in the form of heat and must be removed at a rate sufficient to maintain the microprocessor""s temperature below a damage temperature. If the microprocessor temperature rises above the damage temperature, the microprocessor may be damaged.
Since clock frequency and operating voltage are typically externally controlled, microprocessor manufacturers publish a thermal design power chart showing power dissipation for each microprocessor. It is up to the designer of the microprocessor-operated device to follow these guidelines to protect the microprocessor from being damaged.
The thermal design power chart lists a power dissipation for a microprocessor executing a worst-case instruction mix at different clock frequencies for worst-case leakage power and ambient temperature around the microprocessor with about a 20% to 25% safety margin, as is well known to those of ordinary skill in the art. Optimizing the design of microprocessor-operated devices, operating voltages, currents, and clock frequencies for these worst-case operating conditions reduces microprocessor performance.
On the other hand, if the microprocessor-operated devices, operating voltages, currents, and clock frequencies are designed for less than worst-case conditions, the temperature limits of the microprocessor will more likely be exceeded. In fact, it is possible to exceed these assumed worst-case conditions and increase the temperature to a temperature that will physically damage the microprocessor. Thus, designers of the microprocessor-operated devices use the worst-case conditions to design the microprocessor""s normal operating states, i.e. normal speed operating states. In addition, to prevent damage, a temperature circuit monitors the microprocessor""s temperature. The temperature circuit typically includes a thermocouple attached to the microprocessor""s case or die. The thermocouple measures the temperature of the microprocessor""s case or die and if the temperature rises to a trigger temperature, the microprocessor is shut down. Where the latency of the thermocouple is high, the trigger temperature is reduced to compensate for the increase in temperature between the time the trigger temperature is reached and the time the microprocessor is shut down. When the microprocessor cools down to a safe temperature, the microprocessor is turned on again. Further, a high latency is involved in shutting down and restarting the microprocessor when the temperature reaches a safe temperature. These latencies significantly reduce microprocessor performance.